package cc.lucien.web.controller;

import cc.lucien.web.entity.GoodsType;
import cc.lucien.web.service.GoodsTypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.List;
import java.util.Map;

@Controller
@RequestMapping("/admin/goodsType")
public class GoodsTypeController {

    @Autowired
    GoodsTypeService goodsTypeService;

    // 查询所有商品分类
    @RequestMapping("/selectAllGoodsTypes")
    public String selectAllGoodsTypes(Map<String, Object> map){
        List<GoodsType> typeList = goodsTypeService.selectAllGoodsTypes();
        map.put("typeList", typeList);
        return "admin/goodstype/goodstype_list";
    }

    // 去添加商品分类
    @RequestMapping("/toAddGoodsType")
    public String toAddGoodsType(){
        return "admin/goodstype/goodstype_add";
    }

    // 保存添加的商品分类信息
    @RequestMapping("/goodsTypeSave")
    public String goodsTypeSave(GoodsType goodsType, Map<String,Object> map) {
        goodsTypeService.goodsTypeSava(goodsType);
        map.put("typeAddMsg", "添加成功！");
        return "forward:/admin/goodsType/selectAllGoodsTypes";
    }

    //删除商品分类信息
    @RequestMapping("/deleteGoodsType/{id}")
    public String deleteGoodsType(@PathVariable Integer id,Map<String, Object> map) {
        goodsTypeService.deleteGoodsType(id);
        map.put("typeDeleteMsg", "删除成功！");
        return "forward:/admin/goodsType/selectAllGoodsTypes";
    }

    // 去修改商品分类信息
    @RequestMapping("/toUpdateGoodsType/{id}")
    public String toUpdateGoodsType(@PathVariable Integer id,Map<String, Object> map) {
        GoodsType goodsType = goodsTypeService.selectGoodsTypeById(id);
        map.put("goodsTypeUpdate", goodsType);
        return "admin/goodstype/goodstype_update";
    }

    // 保存商品分类信息到数据库
    @RequestMapping("/goodsTypeUpdate")
    public String goodsTypeUpdate(GoodsType goodsType, Map<String, Object> map) {
        goodsTypeService.goodsTypeUpdate(goodsType);
        map.put("typeUpdateMsg", "修改成功！");
        return "forward:/admin/goodsType/selectAllGoodsTypes";
    }
}
